Базы данных

📄 NewSQL

Наследует реляционную структуру и семантику, но построены с помощью современных и масштабируемых конструкций. Цель - обеспечить большую масштабируемость нежели SQL и более высокие гарантии согласованности чем NoSQL


📄 Транзакции

ACID, АСИД

  • Aтомарность, гарантия что набор операций будет выполнен полностью.
  • Согласованность, гарантия того что по мере выполнения транзакций, состояние бд переходит из одного согласованного всеми транзакциями состояния в другое такое же согласованное.
  • Изоляция, конкурирующие за доступ процессы выполняются последовательно, хотя для пользователей это выглядит как будто они выполняются параллельно
  • Долговечность, гарантия того что принятые транзакцией изменения не могут быть потеряны никогда.

Запрос перед попаданием в бд попадает в планировщик запросов


📄 ORM

Dapper - микро ORM для прямого транслирования SQL запросов в БД

В EF Core, для подключения к БД нужно от наследоваться от DBContext и скачать нуггет для нужно БД

То что DBSet поля это таблицы
Для более тонкой настройки таблиц есть метод OnModelCreating(), там например можно менять названия таблиц

Лектор нихуя не знает

Устройство постгри:
https://habr.com/ru/articles/813781/